1. Field of the Invention
The present invention is related to an intelligent switch and a method for retransmitting a lost packet that is associated with a television broadcast stream to one or more decoders (set-top boxes).
2. Description of Related Art
The following abbreviations are herewith defined, at least some of which are referred to in the ensuing description of the prior art and the present invention.
BTVBroadcast TelevisionCOCentral OfficeDSLDigital Subscriber LineDSLAMDigital Subscriber Line Access MultiplexerGbpsGiga-bits-per-secondICCInstant Channel ChangeSAIService Area InterfaceSHESuper HeadendSTBSet-Top BoxTVTelevisionVHOVideo Hub OfficeVODVideo-On-Demand
Referring to FIG. 1 (PRIOR ART), there is a block diagram that illustrates the basic components of an exemplary transport network 100 which can provide broadcast TV channels to homes via DSL phone lines. The exemplary transport network 100 shown includes two super head-ends 102, a backbone network 104, multiple VHOs 106, multiple IOs 108, multiple COs 110, multiple SAIs 112 and multiple STBs 114. In operation, each super head-end 102 (which includes a router 116) receives international TV feeds and supplies those international TV feeds via the backbone network 104 to each VHO 106. Then, each VHO 106 (which includes a router 118, intelligent switch 120, VoD server 122 and BTV server 124) receives local TV feeds and multicasts all of the TV feeds to their respective IOs 108. And, each IO 108 (which includes a router 126) then multicasts all of the TV feeds to their respective COs 110. Then, each CO 110 (which includes an intelligent switch 128) multicasts all of the TV feeds to their respective SAIs 112. And, each SAI 112 (which includes a DSLAM 130) then multicasts all of the TV feeds to their respective STBs 114. In this way, users can interface with their STB 114 and select one of the multicast TV channels to watch on their TV (not shown). The transport network 100 in addition to providing broadcast TV can also provide voice (telecommunications) and data (Internet) to the homes via DSL phone lines.
Each VHO 106 contains a BTV server 124 (multiple BTV servers 124 are possible) whose main purpose is to provide a rapid TV channel change functionality. This functionality is used when a user changes a TV channel and their STB 114 sends an ICC request/fast channel change request) to the BTV server 124 (e.g., delivery server 124). In response, the BTV server 124 unicasts the newly requested TV channel directly to that STB 114 so it can be displayed in a timely manner on the user's TV. Thus, the user will not have to experience an undesirable delay waiting for the new TV channel to be displayed on their TV.
The BTV server 124 also has a secondary purpose in which it is responsible for retransmitting a copy of a lost packet to STBs 114. This functionality is used when a STB 114 is tuned to a TV channel and it detects that there is a lost packet associated with a video stream of that TV channel. In this situation, the STB 114 sends a retransmission request for the lost packet back to the BTV server 124. And, the BTV server 124 then retransmits a copy of the packet back to that particular STB 114 using a unicast session. For example, assume a packet 132 is lost between one of the COs 110′ and one of it's corresponding SAIs 112′. Then, each downstream STB 114′ (only two shown) which happened to be tuned to the TV channel that is associated with the lost packet 132 sends a retransmission request 134 back to the BTV server 124. The BTV server 124 then retransmits (unicasts) two individual lost packets 132′ directly back to the two requesting STBs 114′. It is fairly easy to see how the reception of multiple retransmission requests 134 for the same lost packet 132 and then the retransmission of multiple lost packets 132′ back to the requesting STBs 114′ can lead to a congestion problem. A second example is provided below to better illustrate this point.
In the second example, assume a packet 136 is lost between one of the IOs 108″ and one of it's corresponding COs 110″. Then, each downstream STB 114″ (only four shown) which happened to be tuned to the TV channel that is associated with the lost packet 136 sends a retransmission request 138 back to the BTV server 124. The BTV server 124 then retransmits (unicasts) four individual packets 136′ directly back to the four requesting STBs 114″. Thus, depending on the location of the packet loss and the number of viewers (e.g., STBs 114′ and 114″) that happen to be affected by the packet loss it is possible to overload the BTV server 124. In fact, the BTV server 124 can receive an avalanche of retransmission requests 134 and 138 so it has to individually retransmit a large number of lost packets 132′ and 136′ directly back to the STBs 114′ and 114″. This can lead to two problems:
1. I/O Congestion at BTV server 124: The BTV server 124 has a limited output capacity (e.g., 2 Gbps) to serve both retransmission requests 134 and 138 and ICC requests from STBs 114. Therefore, the mentioned avalanche of retransmission requests 134 and 138 would likely create a congestion problem at the BTV server 124. FIG. 2 (PRIOR ART) is a graph which illustrates the estimated I/O bandwidth requirements in the future on a BTV server 124. As can be seen, this I/O problem is only going to get worse with the passage of time.
2. Transaction Congestion at BTV server 124: The BTV server 124 has to respond to retransmission requests 134 and 138 by locating the requested lost packets 132 and 136 in its buffer, establishing a unicast session, and retransmitting the lost packets 132′ and 136′ back to STBs 114′ and 114″. In addition, the BTV server 124 is responsible for handling ICC requests. Therefore, the mentioned avalanche would likely create an overload at the BTV server 124. FIG. 3 (PRIOR ART) is a graph which illustrates the estimated number of retransmission requests and ICC requests in the future that may be sent to the BTV server 124. As can be seen, this processing/transaction overload is only going to get worse with the passage of time.
Accordingly, there is a need for a new procedure to handle retransmission requests and the retransmissions of lost packets such that the BTV server 124 does not suffer from problems like I/O congestion and/or transaction congestion. This need and other needs are satisfied by the intelligent switch and method of present invention.